用axios发送post请求data里的数组怎么变成了对象

您所在的位置:网站首页 axios post传递数组 用axios发送post请求data里的数组怎么变成了对象

用axios发送post请求data里的数组怎么变成了对象

#用axios发送post请求data里的数组怎么变成了对象| 来源: 网络整理| 查看: 265

我也遇到了这个问题,最终使用qs库解决了这个问题,具体代码段如下

return createRequest({

    url: url,

    method: 'post',

    params: params,

    data: data,

    transformRequest: [

      function (data) { // 解决传递数组变成对象的问题

        Object.keys(data).forEach((key) => {

          if ((typeof data[key]) === 'object') {

            data[key] = JSON.stringify(data[key]) // 这里必须使用内置JSON对象转换

          }

        })

        data = qs.stringify(data) // 这里必须使用qs库进行转换

        return data

      }

    ]

  })

重点是transformRequest这里,需要将参数转换一下。

上面的方案只是为了让传输看起来是json的格式,但是在实际使用过程中是因为我后端接收参数的姿势不对导致的,后端是用golang接收参数,修改了后端后原来的方式就可以解析为数组,不需要再进行这样的转换了。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3